There are continually increasing number of mobile communication devices in use today, including, for example, smart phones, personal digital assistants (PDAs) with wireless capabilities, personal computers, self-service kiosks and two-way pagers. Accordingly, software applications are being developed to execute on these devices and increase their utility. For example, a smart phone may include an application which retrieves the weather for a range of cities, or a PDA which may include an application that allows a user to shop for groceries. Such software applications take advantage of connectivity to a communication network in order to provide timely and useful services to users of the communication devices.
However, due to limited resources of many devices, as well as the complexity and expense required to deliver large amounts of data to the devices, developing and maintaining software applications tailored for a variety of devices remains a difficult and time-consuming task.
Further, with the proliferation of wireless communication devices, there is an increased demand to quickly and easily develop client applications that support access to one or more backend servers. Therefore, it is often the case that the application is developed independently of the required interface to the backend server.
Accordingly, component applications and methods for developing and implementing such applications have been introduced. Details regarding component application can be found in Patent Cooperation Treaty Application Numbers PCT/CA2003/001976 entitled, “System and Method for Building and Execution of Platform-Neutral Generic Services Client Applications” and published as WO2004059938; PCT/CA2003/001980 entitled, “System and Method of Building Wireless Component Applications” and published as WO2004059957; and PCT/CA2003/001981 entitled, “System and Method of Creating and Communicating with Component Based Wireless Applications” and published as WO2004059939, each of which is assigned to the owner of the present application.
As described in these applications, a data-source can be made available to application developers by publishing a data-source schema. The data-source schema is used to facilitate access to the data-source. As further described, a development tool could use the data-source schema to automatically generate components of the component application.
Standard exploration of a data-source schema and metadata allows the development tool to create operations based on stored-procedures and user-functions relying on the parameters/returned value definitions.
However, a stored procedure in a database may include implicit result sets, undeclared in the corresponding data-source schema, or weak cursors as parameters in the declaration. Typically, tools that access the database operate with such entities using a result structure that is known a priori and the application is modeled after the established structure. However, there is no known tool that facilitates developing an application capable of communicating with a database data-source when the result structure is unknown.
Accordingly, it is an object to obviate or mitigate at least some of the above-presented disadvantages.